﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020001A7 RID: 423
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class Challenge : IMessage<Challenge>, IMessage, IEquatable<Challenge>, IDeepCloneable<Challenge>, IBufferMessage
	{
		// Token: 0x17000587 RID: 1415
		// (get) Token: 0x060012FE RID: 4862 RVA: 0x000362FB File Offset: 0x000344FB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<Challenge> Parser
		{
			get
			{
				return Challenge._parser;
			}
		}

		// Token: 0x17000588 RID: 1416
		// (get) Token: 0x060012FF RID: 4863 RVA: 0x00036302 File Offset: 0x00034502
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ChallengeReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000589 RID: 1417
		// (get) Token: 0x06001300 RID: 4864 RVA: 0x00036314 File Offset: 0x00034514
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return Challenge.Descriptor;
			}
		}

		// Token: 0x06001301 RID: 4865 RVA: 0x0003631B File Offset: 0x0003451B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Challenge()
		{
		}

		// Token: 0x06001302 RID: 4866 RVA: 0x00036324 File Offset: 0x00034524
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Challenge(Challenge other) : this()
		{
			this.takenReward_ = other.takenReward_;
			this.recordId_ = other.recordId_;
			this.mDGLHFIFFLC_ = other.mDGLHFIFFLC_;
			this.stageInfo_ = ((other.stageInfo_ != null) ? other.stageInfo_.Clone() : null);
			this.scoreId_ = other.scoreId_;
			this.challengeId_ = other.challengeId_;
			this.star_ = other.star_;
			this.scoreTwo_ = other.scoreTwo_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06001303 RID: 4867 RVA: 0x000363B8 File Offset: 0x000345B8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Challenge Clone()
		{
			return new Challenge(this);
		}

		// Token: 0x1700058A RID: 1418
		// (get) Token: 0x06001304 RID: 4868 RVA: 0x000363C0 File Offset: 0x000345C0
		// (set) Token: 0x06001305 RID: 4869 RVA: 0x000363C8 File Offset: 0x000345C8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint TakenReward
		{
			get
			{
				return this.takenReward_;
			}
			set
			{
				this.takenReward_ = value;
			}
		}

		// Token: 0x1700058B RID: 1419
		// (get) Token: 0x06001306 RID: 4870 RVA: 0x000363D1 File Offset: 0x000345D1
		// (set) Token: 0x06001307 RID: 4871 RVA: 0x000363D9 File Offset: 0x000345D9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint RecordId
		{
			get
			{
				return this.recordId_;
			}
			set
			{
				this.recordId_ = value;
			}
		}

		// Token: 0x1700058C RID: 1420
		// (get) Token: 0x06001308 RID: 4872 RVA: 0x000363E2 File Offset: 0x000345E2
		// (set) Token: 0x06001309 RID: 4873 RVA: 0x000363EA File Offset: 0x000345EA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool MDGLHFIFFLC
		{
			get
			{
				return this.mDGLHFIFFLC_;
			}
			set
			{
				this.mDGLHFIFFLC_ = value;
			}
		}

		// Token: 0x1700058D RID: 1421
		// (get) Token: 0x0600130A RID: 4874 RVA: 0x000363F3 File Offset: 0x000345F3
		// (set) Token: 0x0600130B RID: 4875 RVA: 0x000363FB File Offset: 0x000345FB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChallengeStageInfo StageInfo
		{
			get
			{
				return this.stageInfo_;
			}
			set
			{
				this.stageInfo_ = value;
			}
		}

		// Token: 0x1700058E RID: 1422
		// (get) Token: 0x0600130C RID: 4876 RVA: 0x00036404 File Offset: 0x00034604
		// (set) Token: 0x0600130D RID: 4877 RVA: 0x0003640C File Offset: 0x0003460C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint ScoreId
		{
			get
			{
				return this.scoreId_;
			}
			set
			{
				this.scoreId_ = value;
			}
		}

		// Token: 0x1700058F RID: 1423
		// (get) Token: 0x0600130E RID: 4878 RVA: 0x00036415 File Offset: 0x00034615
		// (set) Token: 0x0600130F RID: 4879 RVA: 0x0003641D File Offset: 0x0003461D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint ChallengeId
		{
			get
			{
				return this.challengeId_;
			}
			set
			{
				this.challengeId_ = value;
			}
		}

		// Token: 0x17000590 RID: 1424
		// (get) Token: 0x06001310 RID: 4880 RVA: 0x00036426 File Offset: 0x00034626
		// (set) Token: 0x06001311 RID: 4881 RVA: 0x0003642E File Offset: 0x0003462E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Star
		{
			get
			{
				return this.star_;
			}
			set
			{
				this.star_ = value;
			}
		}

		// Token: 0x17000591 RID: 1425
		// (get) Token: 0x06001312 RID: 4882 RVA: 0x00036437 File Offset: 0x00034637
		// (set) Token: 0x06001313 RID: 4883 RVA: 0x0003643F File Offset: 0x0003463F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint ScoreTwo
		{
			get
			{
				return this.scoreTwo_;
			}
			set
			{
				this.scoreTwo_ = value;
			}
		}

		// Token: 0x06001314 RID: 4884 RVA: 0x00036448 File Offset: 0x00034648
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as Challenge);
		}

		// Token: 0x06001315 RID: 4885 RVA: 0x00036458 File Offset: 0x00034658
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(Challenge other)
		{
			return other != null && (other == this || (this.TakenReward == other.TakenReward && this.RecordId == other.RecordId && this.MDGLHFIFFLC == other.MDGLHFIFFLC && object.Equals(this.StageInfo, other.StageInfo) && this.ScoreId == other.ScoreId && this.ChallengeId == other.ChallengeId && this.Star == other.Star && this.ScoreTwo == other.ScoreTwo && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06001316 RID: 4886 RVA: 0x00036508 File Offset: 0x00034708
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.TakenReward != 0U)
			{
				num ^= this.TakenReward.GetHashCode();
			}
			if (this.RecordId != 0U)
			{
				num ^= this.RecordId.GetHashCode();
			}
			if (this.MDGLHFIFFLC)
			{
				num ^= this.MDGLHFIFFLC.GetHashCode();
			}
			if (this.stageInfo_ != null)
			{
				num ^= this.StageInfo.GetHashCode();
			}
			if (this.ScoreId != 0U)
			{
				num ^= this.ScoreId.GetHashCode();
			}
			if (this.ChallengeId != 0U)
			{
				num ^= this.ChallengeId.GetHashCode();
			}
			if (this.Star != 0U)
			{
				num ^= this.Star.GetHashCode();
			}
			if (this.ScoreTwo != 0U)
			{
				num ^= this.ScoreTwo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06001317 RID: 4887 RVA: 0x000365F3 File Offset: 0x000347F3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06001318 RID: 4888 RVA: 0x000365FB File Offset: 0x000347FB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06001319 RID: 4889 RVA: 0x00036604 File Offset: 0x00034804
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.MDGLHFIFFLC)
			{
				output.WriteRawTag(8);
				output.WriteBool(this.MDGLHFIFFLC);
			}
			if (this.stageInfo_ != null)
			{
				output.WriteRawTag(26);
				output.WriteMessage(this.StageInfo);
			}
			if (this.Star != 0U)
			{
				output.WriteRawTag(32);
				output.WriteUInt32(this.Star);
			}
			if (this.ChallengeId != 0U)
			{
				output.WriteRawTag(40);
				output.WriteUInt32(this.ChallengeId);
			}
			if (this.ScoreTwo != 0U)
			{
				output.WriteRawTag(64);
				output.WriteUInt32(this.ScoreTwo);
			}
			if (this.ScoreId != 0U)
			{
				output.WriteRawTag(72);
				output.WriteUInt32(this.ScoreId);
			}
			if (this.RecordId != 0U)
			{
				output.WriteRawTag(88);
				output.WriteUInt32(this.RecordId);
			}
			if (this.TakenReward != 0U)
			{
				output.WriteRawTag(120);
				output.WriteUInt32(this.TakenReward);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600131A RID: 4890 RVA: 0x00036704 File Offset: 0x00034904
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.TakenReward != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.TakenReward);
			}
			if (this.RecordId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.RecordId);
			}
			if (this.MDGLHFIFFLC)
			{
				num += 2;
			}
			if (this.stageInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.StageInfo);
			}
			if (this.ScoreId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.ScoreId);
			}
			if (this.ChallengeId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.ChallengeId);
			}
			if (this.Star != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Star);
			}
			if (this.ScoreTwo != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.ScoreTwo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600131B RID: 4891 RVA: 0x000367E0 File Offset: 0x000349E0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(Challenge other)
		{
			if (other == null)
			{
				return;
			}
			if (other.TakenReward != 0U)
			{
				this.TakenReward = other.TakenReward;
			}
			if (other.RecordId != 0U)
			{
				this.RecordId = other.RecordId;
			}
			if (other.MDGLHFIFFLC)
			{
				this.MDGLHFIFFLC = other.MDGLHFIFFLC;
			}
			if (other.stageInfo_ != null)
			{
				if (this.stageInfo_ == null)
				{
					this.StageInfo = new ChallengeStageInfo();
				}
				this.StageInfo.MergeFrom(other.StageInfo);
			}
			if (other.ScoreId != 0U)
			{
				this.ScoreId = other.ScoreId;
			}
			if (other.ChallengeId != 0U)
			{
				this.ChallengeId = other.ChallengeId;
			}
			if (other.Star != 0U)
			{
				this.Star = other.Star;
			}
			if (other.ScoreTwo != 0U)
			{
				this.ScoreTwo = other.ScoreTwo;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600131C RID: 4892 RVA: 0x000368C0 File Offset: 0x00034AC0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600131D RID: 4893 RVA: 0x000368CC File Offset: 0x00034ACC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 40U)
				{
					if (num <= 26U)
					{
						if (num == 8U)
						{
							this.MDGLHFIFFLC = input.ReadBool();
							continue;
						}
						if (num == 26U)
						{
							if (this.stageInfo_ == null)
							{
								this.StageInfo = new ChallengeStageInfo();
							}
							input.ReadMessage(this.StageInfo);
							continue;
						}
					}
					else
					{
						if (num == 32U)
						{
							this.Star = input.ReadUInt32();
							continue;
						}
						if (num == 40U)
						{
							this.ChallengeId = input.ReadUInt32();
							continue;
						}
					}
				}
				else if (num <= 72U)
				{
					if (num == 64U)
					{
						this.ScoreTwo = input.ReadUInt32();
						continue;
					}
					if (num == 72U)
					{
						this.ScoreId = input.ReadUInt32();
						continue;
					}
				}
				else
				{
					if (num == 88U)
					{
						this.RecordId = input.ReadUInt32();
						continue;
					}
					if (num == 120U)
					{
						this.TakenReward = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040007CF RID: 1999
		private static readonly MessageParser<Challenge> _parser = new MessageParser<Challenge>(() => new Challenge());

		// Token: 0x040007D0 RID: 2000
		private UnknownFieldSet _unknownFields;

		// Token: 0x040007D1 RID: 2001
		public const int TakenRewardFieldNumber = 15;

		// Token: 0x040007D2 RID: 2002
		private uint takenReward_;

		// Token: 0x040007D3 RID: 2003
		public const int RecordIdFieldNumber = 11;

		// Token: 0x040007D4 RID: 2004
		private uint recordId_;

		// Token: 0x040007D5 RID: 2005
		public const int MDGLHFIFFLCFieldNumber = 1;

		// Token: 0x040007D6 RID: 2006
		private bool mDGLHFIFFLC_;

		// Token: 0x040007D7 RID: 2007
		public const int StageInfoFieldNumber = 3;

		// Token: 0x040007D8 RID: 2008
		private ChallengeStageInfo stageInfo_;

		// Token: 0x040007D9 RID: 2009
		public const int ScoreIdFieldNumber = 9;

		// Token: 0x040007DA RID: 2010
		private uint scoreId_;

		// Token: 0x040007DB RID: 2011
		public const int ChallengeIdFieldNumber = 5;

		// Token: 0x040007DC RID: 2012
		private uint challengeId_;

		// Token: 0x040007DD RID: 2013
		public const int StarFieldNumber = 4;

		// Token: 0x040007DE RID: 2014
		private uint star_;

		// Token: 0x040007DF RID: 2015
		public const int ScoreTwoFieldNumber = 8;

		// Token: 0x040007E0 RID: 2016
		private uint scoreTwo_;
	}
}
